/** 
 * @descripcion: modulo configurar recibo
 */
var idConcepto_dri = "0";

function loadRI() {
    var loadridialogs = $("#panelSuperior");
    loadridialogs.load("ui/html/accounting/ci/dialogAgregarDetalleRecibo.html", function() {
        $("#dialog-detalle-recibo-ingreso").hide();
        $("#dialog-detalle-recibo-ingreso").dialog({
            resizable: false,
            modal: true,
            autoOpen: false,
            closeOnEscape: false,
            show: 'scale',
            hide: 'explode',
            width: 620,
            buttons: {
                "CANCELAR": function() {
                    $(this).dialog("close");
                },
                "GUARDAR": function() {
                    agregarItemRecibo();
                }
            }
        });
        $("#txtdescripcion_dri").autocomplete({
            source: URI_ARISTO + "?node=" + _GET_CONCEPTOS + "&mod=CONTA&auto=SI&tipo=INGRESO",
            minLength: 1,
            select: function(event, ui) {
                if (ui.item) {
                    idConcepto_dri = ui.item.id;
                    $("#txtvalorunitario_dri").val(ui.item.monto);
                } else {
                    idConcepto_dri = "0";
                }
            }
        });
    });
}

var idPersonabuscada = "0";
function eventoLoadPanelRI() {
    load = new ajaxLoader();
    fverificaLogin();
    loadConfigDialogsSystem();
    loadRI();
    var cuerpo = $("#body-aristo");
    cuerpo.empty().load("ui/html/accounting/ci/panelAgregarRecibo.html", function() {
        idPersonabuscada = "0";
        grillaTemporal = new Array();

        var $grilla_ri = $("#grilla_ri");
        $grilla_ri.datagrid(configDG_pri);

        var panelri = $("#panel-recibo-ingreso");
        $("#btnAgregar_ri").button().click(functionbtnAgregar);
        $("#btnCancelar_ri").button().click(funcionBtnCancelar);
        $("#btnGuardar_ri").button().click(functionbtnGuardar);

        panelri.effect('slide', 500);

        $("#txtfecha_ri").datepicker({
            showOn: "button",
            buttonImage: "ui/img/date_edit_17.png",
            buttonImageOnly: true,
            dateFormat: "dd/mm/yy",
            showAnim: "drop",
            changeMonth: true,
            changeYear: true,
            beforeShow: function(input) {
                $(input).css({
                    "position": "relative",
                    "z-index": 100
                });
            }
        });
        $("#txtfecha_ri").datepicker("setDate", new Date());
        $("#txtfecha_ri").datepicker("option", "minDate", new Date());
        $("#txtfecha_ri").datepicker("option", "maxDate", new Date());
        $("#checkNroRecibo_ri").attr('checked', false);
        funcionGetMaxNroRecibo();
        $("#checkNroRecibo_ri").change(function() {
            var value_ri = $("#checkNroRecibo_ri").is(':checked');
            if (value_ri === true) {
                $("#txtNroRecibo_ri").val("");
                $("#txtNroRecibo_ri").removeAttr('disabled');
                $("#txtfecha_ri").datepicker("setDate", new Date());
                $("#txtfecha_ri").datepicker("option", "minDate", null);
                $("#txtfecha_ri").datepicker("option", "maxDate", "-1");
            } else {
                funcionGetMaxNroRecibo();
                $("#txtNroRecibo_ri").attr('disabled', 'disabled');
                $("#txtfecha_ri").datepicker("setDate", new Date());
                $("#txtfecha_ri").datepicker("option", "minDate", new Date());
                $("#txtfecha_ri").datepicker("option", "maxDate", new Date());
            }
        });
        $("#checkNroRecibo_ri").change();

        /************************************************/
        $("#txtrecibide_ri").val("");
        idPersonabuscada = "0";
        $("#txtrecibide_ri").autocomplete({
            source: URI_ARISTO + "?node=" + _GET_PERSONALES + "&mod=CONTA&auto=SI",
            minLength: 1,
            select: function(event, ui) {
                if (ui.item) {
                    idPersonabuscada = ui.item.id;
                } else {
                    idPersonabuscada = "0";
                }
            }
        });
        /************************************************/

        if (load)
            load.remove();
    });
    return false;
}

function funcionBtnCancelar() {
    var panelri = $("#panel-recibo-ingreso");
    panelri.effect('drop', 500);
    return false;
}

function funcionGetMaxNroRecibo() {
    load = new ajaxLoader();
    var json = new Object();
    json.mod = 'CONTA';
    json.node = _GET_MAXNRORECIBO;
    $.ajax({
        data: json,
        type: "GET",
        dataType: "json",
        url: URI_ARISTO,
        success: resultMaxRecibo,
        error: ferror
    });
}

function resultMaxRecibo(data) {
    if (data !== null) {
        if (data.estado === "SUCCESS") {
            data = data.data;
            $("#txtNroRecibo_ri").val(data.siguiente);
        } else {
            mensajeAristo('error.png', data.descripcion);
        }
    } else {
        mensajeAristo('error.png', 'Error. Verificar conexión de internet');
    }
    if (load)
        load.remove();
}

/***************************************************************************/

function functionbtnAgregar() {
    idConcepto_dri = "0";
    $("#txtdescripcion_dri").val("");
    $("#txtcantidad_dri").val("1");
    $("#txtvalorunitario_dri").val("");
    $("#dialog-detalle-recibo-ingreso").dialog("open");
}

var grillaTemporal = new Array();
function agregarItemRecibo() {
    var idescripcion = $("#txtdescripcion_dri").val();
    var icantidad = $("#txtcantidad_dri").val();
    var ivalor = $("#txtvalorunitario_dri").val();

    if (idescripcion.length > 0 && icantidad.length > 0 && ivalor.length > 0) {
        var item = new Object();
        item.id = idConcepto_dri;
        item.concepto = idescripcion;
        item.cantidad = icantidad;
        item.monto = ivalor;

        grillaTemporal.push(item);

        var $grilla_ri = $("#grilla_ri");
        $grilla_ri.datagrid({jsonStore: {data: {"rows": grillaTemporal}}});

        $("#dialog-detalle-recibo-ingreso").dialog("close");
    } else {
        mensajeAristo('warning.png', 'Ingrese todos los campos');
    }
}

function eliminarFila_ri(eliminado) {
    var nueva = new Array();
    $.each(grillaTemporal, function(key, value) {
        if (value.id != eliminado) {
            nueva.push(value);
        }
    });
    grillaTemporal = new Array();
    grillaTemporal = nueva;
    var $grilla_ri = $("#grilla_ri");
    $grilla_ri.datagrid({jsonStore: {data: {"rows": grillaTemporal}}});
}

/***************************************************************************/

function functionbtnGuardar() {
    var numerorecibo = parseInt($("#txtNroRecibo_ri").val(), 10);
    var idpersona = idPersonabuscada;
    var nrovoucher = $("#txtvoucher_ri").val();
    var fecha = getFechaIngles($("#txtfecha_ri").datepicker("getDate"));
    var detallerecibo = grillaTemporal;

    if (numerorecibo > 0 && idPersonabuscada !== "0" && grillaTemporal.length !== 0) {
        load = new ajaxLoader();
        var json = new Object();
        json.mod = 'CONTA';
        json.node = _POST_RECIBO;
        json.nrorecibo = numerorecibo;
        json.idpersona = idpersona;
        json.nrovoucher = nrovoucher;
        json.fecha = fecha;
        json.detalle = detallerecibo;
        $.ajax({
            data: json,
            type: "POST",
            dataType: "json",
            url: URI_ARISTO,
            success: resultEvtGuardarRecibo,
            error: ferror
        });
    } else {
        mensajeAristo('warning.png', 'Ingrese numero de recibo y/o persona por buscador y/o detalle de recibo');
    }
}

function resultEvtGuardarRecibo(data) {
    if (data !== null) {
        if (data.estado === 'SUCCESS') {
            data = data.data;
            //$("#panel-recibo-ingreso").dialog("close");
            mensajeAristo('ok.png', data.descripcion);
            imprimirReciboExcel(data.id);
            funcionBtnCancelar();
        } else {
            // $("#panel-recibo-ingreso").dialog("close");
            mensajeAristo('error.png', data.descripcion);
        }
    } else {
        mensajeAristo('error.png', 'Error. Verificar conexión de internet');
    }
    if (load)
        load.remove();
}

function imprimirReciboExcel(id) {
    var imprimir = URI_ARISTO + "?mod=CONTA&node=" + _IMPRIMIR_RECIBO + "&iddocumento=" + id;
    var x = screen.width / 2 - 600 / 2;
    var y = screen.height / 2 - 300 / 2;
    popup = window.open(imprimir, "GENERANDO RECIBO EN EXCEL", 'height=300,width=600,resizable=no,menubar=no,status=1,toolbar=1,left=' + x + ',top=' + y);
    return false;
}

/*******************************************************************************/
var ideliminarRecibo = -1;
function loadAR() {
    var loadardialogs = $("#panelSuperior");
    loadardialogs.load("ui/html/accounting/ci/dialogEliminarRecibo.html", function() {
        $("#dialog-eliminar-recibo").hide();
        $("#dialog-eliminar-recibo").dialog({
            resizable: false,
            modal: true,
            autoOpen: false,
            closeOnEscape: false,
            show: 'scale',
            hide: 'explode',
            width: 620,
            buttons: {
                "CANCELAR": function() {
                    $(this).dialog("close");
                    ideliminarRecibo = -1;
                },
                "GUARDAR": function() {
                    funcionEliminarRecibo();
                }
            }
        });
    });
}

function eventoLoadPanelAR() {
    load = new ajaxLoader();
    fverificaLogin();
    loadConfigDialogsSystem();
    loadAR();
    var cuerpo = $("#body-aristo");
    cuerpo.empty().load("ui/html/accounting/ci/panelAnularRecibo.html", function() {
        var $grilla_ar = $("#grilla_ar");
        $grilla_ar.datagrid(configDG_par);

        var panelar = $("#panel-anular-recibo-ingreso");
        $("#btnCancelarpari").button().click(salirAnularRecibo);
        panelar.effect('slide', 500, obtenerRecibos);

        if (load)
            load.remove();
    });
    return false;
}

function salirAnularRecibo() {
    var panelar = $("#panel-anular-recibo-ingreso");
    panelar.effect('drop', 500);
    return false;
}

function obtenerRecibos() {
    load = new ajaxLoader();
    var json = new Object();
    json.mod = 'CONTA';
    json.node = _GET_RECIBOS;
    $.ajax({
        data: json,
        type: "GET",
        dataType: "json",
        url: URI_ARISTO,
        success: function(datas) {
            if (datas.estado !== "SUCCESS") {
                mensajeAristo("error.png", datas.descripcion);
            }

            var $grilla_ar = $("#grilla_ar");
            $grilla_ar.datagrid({jsonStore: {data: {"rows": datas.data}}});

            if (load)
                load.remove();
        },
        error: ferror
    });
}

function eliminarFila_ar(ID) {
    ideliminarRecibo = parseInt(ID);
    $("#dialog-eliminar-recibo").dialog("open");
}

function funcionEliminarRecibo() {
    if (ideliminarRecibo !== -1) {
        load = new ajaxLoader();
        var json = new Object(); //json eliminar de la base de datos
        json.mod = 'CONTA';
        json.node = _DELETE_DOCUMENTO;
        json.id = ideliminarRecibo;

        $.ajax({
            data: json,
            type: "POST",
            dataType: "json",
            url: URI_ARISTO,
            success: resultadoEliminarRecibo,
            error: ferror
        });
    }
}

function resultadoEliminarRecibo(data) {
    if (data !== null) {
        if (data.estado === 'SUCCESS') {
            data = data.data;
            $("#dialog-eliminar-recibo").dialog("close");
            mensajeAristo('ok.png', data.descripcion);
            obtenerRecibos();
        } else {
            $("#dialog-eliminar-recibo").dialog("close");
            mensajeAristo('error.png', data.descripcion);
        }
    } else {
        mensajeAristo('error.png', 'Error. Verificar conexión de internet');
    }
    if (load)
        load.remove();
}